﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using GLImp;
using System.Drawing;

namespace CastleOfTheDisillusioned {
	class Program {
		public static Random Random = new Random();
		
		public static Camera2D CameraOverlay;

		static void Main(string[] args) {
			GraphicsManager.UseExperimentalFullAlpha = true;

			GraphicsManager.Update += new GraphicsManager.Updater(Update);
			
			CameraOverlay = new Camera2D();
			CameraOverlay.Layer = 10;
			CameraOverlay.OnRender += Overlay.Draw;

			Initialize();
			GraphicsManager.SetResolution(800, 600);
			GraphicsManager.SetBackground(Color.Black);
			GraphicsManager.Start();
		}

		static void Initialize() {
			MainCamera.Init();
			GameState.ChangeState(GameState.Overworld);
		}

		static void Update() {
			GameState.CurrentState.Update();
			ParticleManager.Update();
		}
	}
}
